package com.renne.email.domain;

import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.ToString;

/**
 * 邮件明细(tb_mail_item)查询参数类
 *
 * @author LiuYu
 * @date 2024-07-26
 */
@Data
@ToString
@Schema(description = "查询邮件明细列表参数")
public class MailItemQuery {

    /**
     * 邮件明细表ID
     */
    @Schema(description = "邮件明细表ID")
    private String mailItemId;
    /**
     * 导入历史记录表ID
     */
    @Schema(description = "导入历史记录表ID")
    private String mailImportHistoryId;
    /**
     * 标题
     */
    @Schema(description = "标题")
    private String title;
    /**
     * 收件人
     */
    @Schema(description = "收件人")
    private String toEmail;
    /**
     * 发件人
     */
    @Schema(description = "发件人")
    private String sendEmail;
    /**
     * 附件地址
     */
    @Schema(description = "附件地址")
    private String filePath;
    /**
     * 起始最后发送时间
     */
    @Schema(description = "起始最后发送时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date beginLastSendTime;
    /**
     * 结束最后发送时间
     */
    @Schema(description = "结束最后发送时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endLastSendTime;
    /**
     * 发送状态（0失败 1成功 2待发送）
     */
    @Schema(description = "发送状态（0失败 1成功 2待发送）")
    private String status;
    /**
     * 导入文件名称
     */
    @Schema(description = "导入文件名称")
    private String fileName;

    /**
     * 分页页码
     */
    @Schema(description = "分页页码")
    private String pageNum;
    /**
     * 分页大小
     */
    @Schema(description = "分页大小")
    private String pageSize;
    /**
     * 排序列
     */
    @Schema(description = "排序列")
    private String orderByColumn;
    /**
     * 排序的方向desc或者asc
     */
    @Schema(description = "排序的方向", allowableValues = {"asc", "desc"})
    private String isAsc;


}
